package com.yuyou.fn.settlement.service;

import com.github.wens.framework.service.ISuperService;
import com.pingplusplus.model.Charge;
import com.yuyou.fn.settlement.entity.PayOrder;
import com.yuyou.fn.settlement.vo.PreparePayResultVo;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;

/**
 *
 * PayOrder 表数据服务层接口
 *
 */
public interface IPayOrderService extends ISuperService<PayOrder,Long> {

    PreparePayResultVo preparePay(String userId , Long busId , String busType , BigDecimal amount , String orderName , String orderContent , String returnUrl );


    /**
    *@Description: 集团支付中心回调
    *@Param:
    *@return: 
    *@Author: lzh
    *@date: 
    */
    void callback(String id, String version, String appId, Long orderId, String payOrderId, int payStatus, String attach, String firstSucTrxId, String firstSucChannelId, long firstSucNotifyTime, String sign,String thirdTrxNo,String payPrx,String payMode,String terminal);

    PayOrder findHadPaidPayOrderByBusId(Long busId);


    void updateBusHandleTime(Long payOrderId);

    boolean isPaid(Long busId);

    void sendPaySuccessEvent(Long payOrderId);

}